package com.qst.system.mapper;

import java.util.List;
import com.qst.system.domain.ScoreLevel;
import com.qst.system.domain.vo.ScoreLevelVo;

/**
 * 用户等级Mapper接口
 * 
 * @author linzhe
 * @date 2025-08-25
 */
public interface ScoreLevelMapper 
{
    /**
     * 查询用户等级
     * 
     * @param scoreId 用户等级ID
     * @return 用户等级
     */
    public ScoreLevel selectScoreLevelById(Long scoreId);

    /**
     * 查询用户等级列表
     * 
     * @param scoreLevel 用户等级
     * @return 用户等级集合
     */
    public List<ScoreLevel> selectScoreLevelList(ScoreLevel scoreLevel);
    
    /**
     * 查询用户等级列表（联表查询）
     * 
     * @param scoreLevel 用户等级
     * @return 用户等级集合
     */
    public List<ScoreLevelVo> selectScoreLevelVoList(ScoreLevel scoreLevel);

    /**
     * 新增用户等级
     * 
     * @param scoreLevel 用户等级
     * @return 结果
     */
    public int insertScoreLevel(ScoreLevel scoreLevel);

    /**
     * 修改用户等级
     * 
     * @param scoreLevel 用户等级
     * @return 结果
     */
    public int updateScoreLevel(ScoreLevel scoreLevel);

    /**
     * 删除用户等级
     * 
     * @param scoreId 用户等级ID
     * @return 结果
     */
    public int deleteScoreLevelById(Long scoreId);

    /**
     * 批量删除用户等级
     * 
     * @param scoreIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteScoreLevelByIds(Long[] scoreIds);
    
    /**
     * 查询所有公司名称
     * 
     * @return 公司名称列表
     */
    public List<String> selectCompanyNameList();
}